Skip to content

Add Rust CLI port - #321

Open
etbyrd wants to merge 1 commit into
mainfrom
rust-cli-port
Open

Add Rust CLI port#321
etbyrd wants to merge 1 commit into
mainfrom
rust-cli-port

Conversation

@etbyrd

@etbyrd etbyrd commented Jul 18, 2026

Copy link
Copy Markdown
Member

Summary

  • Add an optional Rust CLI port with generated operation manifest, friendly command routing, auth/config handling, and the major task-oriented command groups.
  • Add Rust packaging and install scripts for release-style archives while keeping rollout separate from the root npm package path.
  • Add parity harnesses for command surface, bytewise help copy, generated request coverage, black-box Node-vs-Rust fixtures, packaged archive parity, live smoke entrypoints, and browser-launch trapping during parity tests.

Validation

  • CI is rerunning on the current PR head.
  • make rust-cli-full-check
  • make cli-parity (2737 Node-accepted help spellings, 119/119 operations, 58/58 generated aliases, 119/119 generated command fixtures, 467 black-box cases)
  • make cli-archive-parity (2737 Node-accepted help spellings and 467 black-box cases against both extracted primitive and prim archive binaries)
  • make rust-cli-check-generated cli-command-surface-parity cli-operation-coverage
  • node --check scripts/run-cli-parity.mjs
  • node --check scripts/run-cli-help-sweep.mjs
  • node --check scripts/generate-rust-cli-help-snapshots.mjs
  • cargo build --manifest-path cli-rust/Cargo.toml --locked
  • git diff --check

@greptile-apps

greptile-apps Bot commented Jul 18, 2026

Copy link
Copy Markdown

Confidence Score: 5/5

This looks safe to merge.

  • No blocking issues found in the changed code.

Important Files Changed

Filename Overview
cli-rust/src/config.rs Adds Rust CLI config and OAuth credential resolution, including refresh handling for saved sessions.
cli-rust/src/payloads.rs Adds Rust CLI Payloads push/pull support and payload client credential wiring.
scripts/package-rust-cli.mjs Adds release archive packaging for the Rust CLI across supported platforms.
scripts/install-rust-cli.ps1 Adds the Windows installer path for Rust CLI release archives.
.github/workflows/rust-cli-release.yml Adds the manual Rust CLI release workflow with platform builds and installer smoke checks.
sdk-go/webhook.go Updates Go webhook parsing behavior alongside shared contract changes.

Reviews (32): Last reviewed commit: "Add Rust CLI port" | Re-trigger Greptile

Comment thread cli-rust/src/config.rs
Comment thread scripts/package-rust-cli.mjs
@etbyrd
etbyrd force-pushed the rust-cli-port branch 4 times, most recently from 81b73ad to e0973ad Compare July 18, 2026 19:20
Comment thread cli-rust/src/config.rs
Comment thread cli-rust/src/config.rs
@etbyrd
etbyrd force-pushed the rust-cli-port branch 2 times, most recently from 1552609 to 5af14f6 Compare July 18, 2026 20:46
Comment thread cli-rust/src/payloads.rs Outdated
Comment thread cli-rust/src/payloads.rs Outdated
@etbyrd
etbyrd force-pushed the rust-cli-port branch 2 times, most recently from 18e9f0c to d2c28cb Compare July 19, 2026 17:35
Comment thread cli-rust/src/payloads.rs
@etbyrd
etbyrd force-pushed the rust-cli-port branch 13 times, most recently from 5e53675 to 909b186 Compare July 21, 2026 09:53
@etbyrd
etbyrd force-pushed the rust-cli-port branch 3 times, most recently from 322c5b5 to 0765fa5 Compare July 21, 2026 17:25
@poiley

poiley commented Jul 21, 2026

Copy link
Copy Markdown
Contributor

Heads-up on stacking: there are five open PRs based on rust-cli-port, all Greptile 5/5 or close, fixing parity gaps found by differential testing against the Node CLI:

Each force-push of rust-cli-port (three so far) invalidates all of them and costs a round of conflict surgery + re-review. Two easy options: pull these branches into your next snapshot before force-pushing (each is a clean delta on the current head), or ping before rewriting so the stack can be rebased in one pass. Happy to hand any of them over as patches if that's easier.

Comment thread cli-rust/src/config.rs
Comment thread cli-rust/src/config.rs
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants